package main

import (
	"PolarDay/common/setting"
	"PolarDay/routers"
	"fmt"
	"net/http"
	"time"
)

func main() {
	// 参数绑定和验证的中间件
	//binding.Validator = new(validator.DefaultValidator)
	router := routers.InitRouter()
	conf := setting.Config.Server
	// router.Run( fmt.Sprintf(":%s", conf.Port))
	s := &http.Server{
		Addr:           fmt.Sprintf(":%s", conf.Port),
		Handler:        router,
		ReadTimeout:    conf.ReadTimeout * time.Second,
		WriteTimeout:   conf.WriteTimeout * time.Second,
		MaxHeaderBytes: 1 << 20,
	}
	_ = s.ListenAndServe()
}

// func main() {
// 	// 使用默认中间件创建一个gin路由器
// 	// Default默认开启logger and recovery (crash-free) 中间件
// 	// 实例化一个gin的server对象
// 	router := gin.Default()
// 	//r := gin.New() New()就不会新建中间件

// 	//restful开发中使用
// 	router.GET("/someGet", func(ctx *gin.Context) {
// 		ctx.JSON(http.StatusOK, gin.H{
// 			"msg": "login success1",
// 		})
// 	})
// 	// router.POST("/somePost", posting)
// 	// router.PUT("/somePut", putting)
// 	// router.DELETE("/someDelete", deleting)
// 	// router.PATCH("/somePatch", patching)
// 	// router.HEAD("/someHead", head)
// 	// router.OPTIONS("/someOptions", options)

// 	// 默认启动的是 8080端口，也可以自己定义启动端口
// 	router.Run()
// 	// router.Run(":3000") for a hard coded port
// }
